Industrial control devices are commonly utilized in manufacturing environments to improve control and monitor of plant processes via automating and/or semi-automating such processes. The typical industrial control device (e.g., industrial controllers and programmable logic controllers (PLCs)) comprises a plurality of modules such as a control module(s), an interface module(s) and an Input/Output (IO) module(s), which are utilized in connection with electrical, mechanical, hydraulic and pneumatic systems and processes.
A basic control module can comprise a one or more virtual relays, contactors, counters, timers and other hardware, software and/or firmware based means to facilitate industrial device control. These virtual components typically are user configurable (e.g., user written application specific code). I/O modules provide communication between industrial control devices and the environment. For example, an input channel(s) can be employed to receive analog and digital signals through sensors, switches and the like to provide information indicative of state(s) (e.g., on/off) and/or relating to a process(s), whereas an output channel(s) can be utilized to convey a next state to an entity under control of the controller.
In conventional systems, a custom interface is usually required to couple a remote computer and the industrial controller in order to provide the remote computer with access to the industrial controller. Such interfaces provide the communication channel and/or protocol and commonly require installation of special drivers on both the remote computer and industrial controller. These drivers typically are operating system dependent; and thus, in order to provide access to the industrial controller via a plurality of remote computers with disparate operating systems, more than specialized driver must be installed. Interface and driver development consume time and require testing and maintenance, which can lead to increased production cost. Moreover, controller, computer and/or operating system revisions can render interfaces and/or drivers obsolete, necessitating further development and consumption of resources (e.g., time and money).